#pragma once
#include "Axis.h"

class _XAxis :
	public _Axis
{
public:
	// Constructor and destructor
	_XAxis(_GraphLayout& Layout);
	~_XAxis(void);

	_u32 getHeight();
	_s32 m_Exponent;
	_u32 m_Precision;
	void calculateLayout(double min, double max, _u32 YAxisWidth);

	// Drawing
	void draw(double Min, double Max, bool EnableGrid);
	void drawBackground();
	void drawTitle();
	void drawTicks(bool EnableGrid);
	void drawExponent();

	// Positioning
	bool isInsideAxis(CPoint& Point);

	// Axis title height
	const static _u32 AxisTitleSize = 10;


};

